/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package cz.muni.fi.diplomka.servicelayer.gamelogic.manager;

import cz.muni.fi.diplomka.servicelayer.dto.Player;

/**
 * Interface for manipulating with Players
 *
 * @author Jakub Kutil
 */
public interface PlayerManager {

    /**
     * Creates new Player
     *
     * @param player Player to create
     */
    public void createPlayer(Player player);

    /**
     * Edits Player
     *
     * @param player Player to edit
     */
    public void editPlayer(Player player);

    /**
     * Deletes Player
     *
     * @param playerId Id of Player to delete
     */
    public void deletePlayer(Long playerId);

    /**
     * Gets Player by specified login
     *
     * @param login login to search
     * @return found Player or empty one if not found
     */
    public Player findPlayerByLogin(String login);

    /**
     * Gets Player by specified id
     *
     * @param id Id to search
     * @return found Player or empty one if not found
     */
    public Player findPlayerById(Long id);
}
